
CXX = g++
FLAGS = -O3 -Wall

OBJFILES = main.o ../arcball.o ../glslKernel.o ../GLee.o ../oglutils.o \
			../meshdef/mesh.o ../glDrawFunctions.o 

OBJFILESSKEL = mainSkel.o ../arcball.o ../meshdef/mesh.o \
			../glDrawFunctions.o ../glDrawFunctionsSkel.o ../meshdef/gskeleton.o \
			../skelanim/skeleton.o ../skelanim/bone.o ../skelanim/utils.o 
###################################################################
all: mlsmeshdef mlsSkel

mlsmeshdef: $(OBJFILES)
	@echo "Linking ...."
	$(CXX) -o $@ $^ -lGL -lGLU -lglut -lCGAL -llapack

mlsSkel: $(OBJFILESSKEL)
	@echo "Linking ...."
	$(CXX) -o $@ $^ -lGL -lGLU -lglut -lCGAL

.cpp.o: $*.h
	@echo "Compiling C++ code ...."
	$(CXX) -c $(FLAGS) $*.cpp

clean:
	rm *.o

main.o: main.cpp \
		../meshdef/mlsMeshDeformer.h \
		../meshdef/mlsMeshDeformerVS.h \
		../meshdef/mlsMeshDeformerFS.h ../mlsTimes/mlsComparison.h

mainSkel.o: mainSkel.cpp \
		../meshdef/mlsSkelMeshDeformer.h \
		../meshdef/mlsBlenSkelMeshDeformer.h \
		stroke2d.h 

